This rule applies whenever an IF
statement is followed by one or
more ELSEIF
statements; the final ELSEIF
should be followed by an ELSE
statement.
The requirement for a final ELSE
statement is defensive programming.
The ELSE
statement should either take appropriate action or contain
a suitable comment as to why no action is taken. This is consistent with the
requirement to have a final OTHERS
clause in a CASE
statement.
Noncompliant code example
IF RESULT > 0.
PERFORM do_something.
ELSEIF RESULT = 0.
PERFORM do_something_else.
ENDIF.
Compliant solution
IF RESULT > 0.
PERFORM do_something.
ELSEIF RESULT = 0.
PERFORM do_something_else.
ELSE.
PERFORM error.
ENDIF.